function consume:
    &(echo::#Service) => Async
    &(ctx) =>
        let read-and-request :=
            \ await let input := { sys::scanln 'request: ' },
            \ await let res := { ctx.echo { content: input } },
            let { content } := res,
            { sys::println { "response: ?"..\n { quote content } } },
        read-and-request
            . { forever }
            . { crash-on-error };

entry
    { rpc::access {
        service: echo::#Service,
        backend: echo::DefaultClientBackend,
        options: {},
        argument: { verbose: Yes },
        consumer: &(service) => { consume service }
    } }
    . { crash-on-error };


